package com.example.mybatisplusdemo.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 任务信息
 * </p>
 *
 * @author chenjl
 * @since 2022-09-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("biz_task_info")
public class TaskInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 上报信息ID
     */
    @TableField("report_id")
    private Long reportId;

    /**
     * 任务等级
     */
    @TableField("level")
    private String level;

    /**
     * 标题
     */
    @TableField("title")
    private String title;

    /**
     * 详情
     */
    @TableField("detail")
    private String detail;

    /**
     * 完成期限
     */
    @TableField("deadline")
    private LocalDateTime deadline;

    /**
     * 超时提醒间隔
     */
    @TableField("timeout_remind_interval")
    private Integer timeoutRemindInterval;

    /**
     * 环节类型
     */
    @TableField("step_type")
    private Integer stepType;

    /**
     * 执行人
     */
    @TableField("execute_by")
    private Long executeBy;

    /**
     * 接收人
     */
    @TableField("receive_by")
    private Long receiveBy;

    /**
     * 接收时间
     */
    @TableField("receive_time")
    private LocalDateTime receiveTime;

    /**
     * 退回人
     */
    @TableField("return_by")
    private Long returnBy;

    /**
     * 退回时间
     */
    @TableField("return_time")
    private LocalDateTime returnTime;

    /**
     * 退回原因
     */
    @TableField("return_reason")
    private String returnReason;

    /**
     * 出发时间
     */
    @TableField("depart_time")
    private LocalDateTime departTime;

    /**
     * 出发地点
     */
    @TableField("depart_address")
    private String departAddress;

    /**
     * 到达时间
     */
    @TableField("arrive_time")
    private LocalDateTime arriveTime;

    /**
     * 到达地点
     */
    @TableField("arrive_address")
    private String arriveAddress;

    /**
     * 离场时间
     */
    @TableField("leave_time")
    private LocalDateTime leaveTime;

    /**
     * 离场地点
     */
    @TableField("leave_address")
    private String leaveAddress;

    /**
     * 处置详情
     */
    @TableField("handle_details")
    private String handleDetails;

    /**
     * 机构编码;机构标识
     */
    @TableField("org_code")
    private String orgCode;

    /**
     * 机构名称
     */
    @TableField("org_name")
    private String orgName;

    /**
     * 任务状态
     */
    @TableField("task_status")
    private String taskStatus;


}
